import heapq

# 顺序迭代合并后的排序迭代对象
# 有一系列排序序列，想将它们合并后得到一个排序序列并在上面迭代遍历
def demo_1():
    a = [1, 4, 7, 10]
    b = [2, 5, 6, 11]
    # heapq.merge会先进行序列合并在排序,需要所有输入序列必须是排过序的
    for c in heapq.merge(a, b):
        print(c)

# 使用迭代器代替while循环
def demo_2():
    f = open('../temp/pome.txt')
    # iter代替while循环，一次读取3个字符
    for chunk in iter(lambda : f.read(3), ''):
        print(chunk)


if __name__ == '__main__':
    # demo_1()
    demo_2()